Language in C Interview Questions and Answers
Question: How to use function strdup( ) in a program?
Answer: The string function strdup( ) copies the given string to a new location. The function uses malloc( ) function to allocate space required for the duplicated string. It takes one argument a pointer to the string to be duplicated. The total number of characters present in the given string plus one bytes get allocated for the new string. As this function uses malloc( ) to allocate memory, it is the programmerâ??s responsibility to deallocate the memory using free( ).#include <stdio.h> #include <string.h> #include <alloc.h> void main( ) { char *str1, *str2 = "double"; str1 = strdup ( str2 ) ; printf ( "%sn", str1 ) ; free ( str1 ) ; } |
Is it helpful?
Yes
No
Most helpful rated by users:
- What will be the output of the following code?
void main ()
{ int i = 0 , a[3] ;
a[i] = i++;
printf ("%d",a[i]) ;
} - Why doesn't the following code give the desired result?
int x = 3000, y = 2000 ;
long int z = x * y ; - Why doesn't the following statement work?
char str[ ] = "Hello" ;
strcat ( str, '!' ) ; - How do I know how many elements an array can hold?
- How do I compare character data stored at two different memory locations?